A number of systems and programs are offered on the market for the design of parts or assemblies of parts, such as the one provided by Dassault Systemes under the trademark CATIA. These so-called computer-aided design (CAD) systems allow a user to construct and manipulate complex three dimensional (3D) models of objects or assemblies of objects. CAD systems thus provide a representation of modeled objects using edges or lines, in certain cases with faces. Lines or edges may be represented in various manners, e.g. non-uniform rational B-splines (NURBS). These CAD systems manage parts or assemblies of parts as modeled objects, which are mainly specifications of geometry. In particular, CAD files contain specifications, from which geometry is generated. From geometry, a representation is generated. Specifications, geometry and representation may be stored in a single CAD file or multiple ones. CAD systems include graphic tools for representing the modeled objects to the designers; these tools are dedicated to the display of complex objects—the typical size of a file representing an object in a CAD system extending up to the range of a Mega-byte for part, and an assembly may comprise thousands of parts. A CAD system manages models of objects, which are stored in electronic files.
Designing a mechanical part with a known CAD system can be seen as defining the geometrical shape and dimensions of said part so as to fit functional and manufacturing requirements. Mainly, the resulting shape is a combination of basic features such as pad, pocket, groove, shaft etc. created by the designer. Through complex geometrical and topological computations, the CAD system yields the boundary representation of the solid (mechanical part) as e.g. a closed and oriented surface.
Obviously, modeled objects designed with CAD systems aim at resembling as closely as possible to the final fabricated product, at least for some applications.
For example, in the field of product/part molding, use is made of molds which can be regarded as continuous faces, possibly connected through sharp edges. The real edges—e.g. of the real molds—are however not perfectly sharp edges but rather show slightly rounded or filleted sections. Thus, when such features are neglected in the corresponding theoretical model, the quantity of material needed for molding slightly differs from that expected from the theoretical model. Obviously, such details may be seen as unimportant as long as one focuses on the overall agreement between real and modeled objects. However, this may become of importance when considering mass/continuous production, where the differences between theoretical and real quantity of material necessary for production are substantial.
Additional constraints can be pointed out. For instance, the solid's boundary representation is an input data to design the mold. The boundary representation of the mold is an input data to compute the tool trajectory to machine the mold from a rough stock. In order to optimize material flow, cooling process, and un-molding step, sharp edges are generally not allowed on the mold. For tool path optimization, the faces of the mold must be as canonical as possible (plane, cylinder, sphere, torus, cone).
Therefore, one understands that it is needed to predict as faithfully as possible the features of the final “real” product, should it be for improving feasibility or forecasting. In other words, it is necessary to improve the agreement between modeled and real parts. In this respect, CAD designers sometimes have to replace sharp edges of theoretical molds or products by rounded edges.
To achieve this, the classic modeling approach is to create fillet-like sections (e.g. a radius to apply on concave edges) of round-like sections (radius to apply on convex edges) of product edges, one by one. As illustrated in FIGS. 1A-B, a model product may thus subsequently exhibit fillet-like (hereafter referred to as “fillet”) and/or rounded sections (hereafter “rounds”).
Designing rounds and fillets for a model product is usually a one-by-one process. Creating rounds and/or fillets according to such a process becomes quickly very complicated when the number of element to model increases. The user has to find a certain order of steps, which may vary according to the modeled object. If not, the rounding or filleting design may fail.
Furthermore, there are situations wherein the complexity of the modeled object (multiplicity of edges, corner areas, etc.) may be an additional source of failure. In particular, modeling rounds or fillet where edges collide (corners, hard zones, etc.) is a torment. To avoid that, substantial time is needed to determine a sequence of creation of the fillets or rounds that “works”. All through the design, the user rounds single sharp edges or small groups of sharp edges, thus creating an ordered sequence.
Within some known CAD systems, this sequence is captured by the history based CAD system and replayed after a modification. The “manual” sequence can thus be processed. The history tree of the part includes many round and fillet features ordered according to designer's selections.
On the other end, some automatic blending algorithms are known, as in patent application EP 1 710 720 (“blending” is used in the field as meaning filleting or rounding). Such a method allows for automatic management of edges of a solid part and provides other advantageous features. This method requires preferably a special set of functional surfaces to be selected by the user. Other global blending (“System for blending surfaces in geometric modeling”, see patent document U.S. Pat. No. 5,251,160) can blend the whole solid part. In this case, no ordering task is required from the designer but the specification tree includes mostly one “automatic blending” feature only.
Accordingly, although automatic blending algorithms are known, it is believed that the best possible results are often achieved by manual input of an ordered sequence by the user, preferably being very knowledgeable and experienced in this domain. However, as explained above, the designer has to find an ordered sequence of sharp edges that works, which means that a number of sequences may fail to compute the geometry. The designing process is therefore time consuming. In addition, amongst other drawbacks, it turns that different sequences yield different geometrical results. In particular, the obtained geometrical results are not equivalent from the mechanical design point of view. In particular, more or less material is added to or removed from the solid, and machining the final shape is more or less expensive depending on the number of surfaces. A genuine filleting skill is therefore required from the designer to release an industrial result.
This is illustrated in reference to FIGS. 2A and 2B. Rounding and filleting strategy illustrated in FIG. 2A yields a correct result. Here, circled numbers represents steps of a sequence of fillet/round. Edges pointed at by identical step number are processed together. The result of the sequence shown is that canonical surfaces are created as much as possible. The geometry is precisely what would manufacture a machining process using a ball end cutting tool.
Conversely, the strategy illustrated in FIG. 2B is not as good. There are more resulting faces, that is, twenty faces instead of sixteen above. The faces in question are depicted as shaded, in the vicinity of the corresponding edges. In addition, there are less canonical surfaces, there are many sharp end faces, and no simple machining process would yield this geometry.
In this respect, it can be noted that selecting all sharp edges in a same batch process is not realistic because the ordered sequence is out of designer's control and the geometrical result turns out to be unpredictable.
Patent documents listed below are related to the same technical field of the invention.
For example, the patent application “Method for blending edges of a geometric object in a computer-aided design system” (EP 0 649 103) describes an algorithm modifying the boundary representation of the solid part in order to create rounds or fillets on user selected edges. The question of automatic and appropriate ordering is however not addressed.
Patent application “System for blending surfaces in geometric modeling” (U.S. Pat. No. 5,251,160, discussed above) describes an algorithm to blend together a set of primitive solid shapes. These solid shapes are required to be implicitly defined. However, the modeling technology disclosed does not fit some industrial requirements for the following reasons. Only simple objects can be modeled using only implicit equations. Manufactured physical objects, that is, real life objects rather include complex sweep surfaces (airplane wing, thermal engine inlet or outlet port, car “body-in-white” stiffener), draft surfaces for casting and forging industry, free form styling surfaces. Thus, implicit definition of real surfaces is out of reach. They are instead described through explicit functions.
Patent application “Method of computer aided design of a modeled object having several faces” (EP 1 710 720, discussed above), discloses a generic algorithm to modify the boundary representation of a solid in order to provide a drafted or rounded/filleted shape. No ordering algorithm is described.
Next, SolidWorks Corporation, a Dassault Systemes company, has released recently “SolidWorks Intelligent Features Technology” (SWIFT). This set of advanced tools includes a special command to order rounds and fillets when the designer selects a set of edges. Testing various scenarios, the present inventors have concluded that the algorithm used was not designed to satisfy requirements of the mechanical specifications of molding/casting
Finally, there remains a need for finding a solution for automatically defining a suitable ordered sequence of processing rounds/fillets, in order to save time in the rounding/filleting design process and improving matching of requirements of the mechanical specifications.